Golang Job: Principal Software Engineer

Job added on

Company

Druva

Location

Letterkenny - Ireland

Job type

Full-Time

Golang Job Details

Location: Letterkenny, County Donegal, Ireland

Type of Employee: Full-time

Druva enables cyber, data and operational resilience for every organization with the Data Resiliency Cloud, the industry’s first and only at scale SaaS solution. Customers can radically simplify data protection, streamline data governance, and gain data visibility and insights as they accelerate cloud adoption. Druva pioneered a SaaS-based approach to eliminate complex infrastructure and related management costs, and deliver data resilience via a single platform spanning multiple geographies and clouds. Druva is trusted by thousands of enterprises, including 60 of Fortune 500, to make data more resilient and accelerate their journey to the cloud. Visit druva.com and follow us on LinkedIn, Twitter and Facebook.

The Role & The Team:

As a Principal Engineer, you will be providing cross-functional technical leadership to create high-quality software. We are looking for a Principal Full Stack Engineer on AWS with NodeJS or Java experience preferable. You must have demonstrated the ability to be technically confident, consult with experts to build expertise, and develop simple designs to solve complex problems.

Reporting to the Manager of Engineering/Director of Engineering, The right candidate will have a track record of designing, implementing & operating highly available, scalable, and efficient software solutions. They will focus on leading software delivery best practices through Agile methodology. You will be responsible for the technical guidance and mentoring of the team. The candidate will be required to collaborate with Product Management to refine requirements, product architects to propose architectural changes, and other product owners to drive features to completion with good quality.

What You Will Do:

  • Owns architecture, design, implements, and maintains modules/services within a product
  • Provides technical leadership in solving complex problems and creating high-quality software
  • Independently defines milestones, plans tasks and schedules work items
  • Leads the development of new features, defines technical requirements
  • Works with product architects, suggests, and proposes design and architectural changes
  • Conducts technical interviews
  • Guides other engineers technically with feature design and implementation
  • Actively leads and mentors team members
  • Collaborates with the Product Management team to refine requirements based on engineering assessment of solution and estimates
  • Participates in customer calls, assimilates, and conveys feedback, and identifies technical areas of improvement for the product
  • Possesses strong awareness of markets and competing products
  • Identifies risks and devises mitigation plans throughout the software development lifecycle
  • Conducts onboarding sessions for new employees joining the team
  • Influences others to be excited and committed to furthering the organization’s objectives
  • Overseeing the automated testing and providing feedback to management during the development process
  • Contribute to technical blogs and external forums

What We Are Looking For:

  • Degree in Computer Science or related field, or equivalent experience with recognized and applicable industry certifications
  • 7+ years’ of highly technical, hands-on job experience
  • 5+ years’ experience building and designing solutions that run in virtualized environments
  • 5+ years’ in a customer-facing role or extensive experience working with internal business leads
  • Strong proficiency with JavaScript, Golang, and/or Python/Java
  • Solid knowledge of Node.js and frameworks available for it e.g. Express, Sequelize, etc.
  • Understanding the nature of asynchronous programming and its quirks and workarounds
  • Basic understanding of front-end technologies, such as HTML5, and CSS3
  • Understanding accessibility and security compliance
  • User authentication and authorization between multiple systems, servers, and environments
  • Integration of multiple data sources and databases into one system
  • Understanding fundamental design principles behind a scalable application
  • Understanding differences between multiple delivery platforms, such as mobile vs. desktop, and optimizing output to match the specific platform
  • Creating database schemas that represent and support business processes
  • Implementing automated testing platforms and unit tests
  • Proficient understanding of code versioning tools, such as Git
  • Solid experience in Cloud Technologies (preferably AWS, Azure) is a distinct advantage
  • AWS Accreditation is a plus
  • Experience leading a software engineering team
  • developing solutions.
  • Possesses excellent interpersonal skills including communication, empathy, and assertiveness
  • Experience with Container and Container orchestration platforms like Kubernetes is an advantage
  • Organized and goal-focused, ability to manage multiple projects in a fast-paced environment
  • Strong problem-solving skills